package cn.jingyuan.swan.log;

import java.util.Date;

/**
 * 日志模型
 */
// FIXME 考虑分布式服务下，日志数据模型
public class LogModel {
    // https://blog.csdn.net/d597180714/article/details/82382703

    /*
        a）、traceId  类型追踪号
        b）、考虑兼容 nginx 日志
        c）、考虑兼容 网关日志
     */


    /*
        <pattern>
            {
            "severity": "%level",
            "service": "${springAppName:-}",
            "trace": "%X{X-B3-TraceId:-}",
            "span": "%X{X-B3-SpanId:-}",
            "exportable": "%X{X-Span-Export:-}",
            "pid": "${PID:-}",
            "thread": "%thread",
            "class": "%logger{40}",
            "rest": "%message"
            }
        </pattern>
     */

    String project;
    // "severity": "%level",


    Date time;

    /** 日志的来源地，例如产生该日志机器的IP地址。 */
    String source;

    /** 用以记录日志的具体内容。内容部分由一个或多个内容项组成，每一个内容项由Key-Value对组成。*/
    String content;


    Exception cause;


}
